package logutil

import (
	"log"
	"os"
)

// GlobalLogger 定义一个全局的Logger对象
var GlobalLogger *log.Logger

// InitializeLogger 初始化日志记录器
func InitializeLogger(logFilePath string) {
	// 打开日志文件，如果文件不存在将会被创建
	logFile, err := os.OpenFile(logFilePath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)

	if err != nil {
		log.Fatalf("error opening log file: %v", err)
	}
	defer logFile.Close()

	// 创建一个新的log.Logger对象，将日志写入文件
	GlobalLogger = log.New(logFile, "INFO: ", log.Ldate|log.Ltime|log.Lshortfile)
}

// LogError 记录错误信息
func LogError(err error) {
	if GlobalLogger != nil {
		GlobalLogger.Printf("This is an error: %v", err)

	}
}

// LogInfo 记录信息信息
func LogInfo(message string) {
	if GlobalLogger != nil {
		GlobalLogger.Printf("This is an info message: %s", message)
	}
}
